# -*- coding: utf-8 -*-

from Bauteilkiste.UIClasses.UIInputDialog import UIInputDialog
from PyQt4 import QtGui

class UIDioden(UIInputDialog):
    def __init__(self, parent = None):
        UIInputDialog.__init__(self, parent)
        self.tableName = "Dioden"
        
        
        #########################################
        ###Elemente definieren
        #########################################
        
        labels = {}
        for l in ["Bezeichnung", "Typ", "Spannung", "Stromstärke", "Bauform"]:
            labels[l] = QtGui.QLabel(l)
            
        self.inputs["Bezeichnung"]  = QtGui.QLineEdit()
        self.inputs["Typ"]          = QtGui.QComboBox()
        self.inputs["Spannung"]     = QtGui.QLineEdit()
        self.inputs["Stromstärke"] = QtGui.QLineEdit()
        
        ########################################
        ###Eigenschaften
        ########################################
        
        self.inputs["Typ"].setEditable(True)
        for i in ["Silizium", "LED", "Zener", "Schottky"]:
            self.inputs["Typ"].addItem(i)
        
        self.inputs["Spannung"].editingFinished.connect(self.checkNumber)
        self.inputs["Stromstärke"].editingFinished.connect(self.checkNumber)
        self.numberFields.append("Spannung")
        self.numberFields.append("Stromstärke")
        
        self.setWindowTitle("Diode hinzufügen")
        
        ########################################
        ###Anordnen
        ########################################
        
        mainVBox    = QtGui.QVBoxLayout()
        topGrid     = QtGui.QGridLayout()
        bottomGrid  = QtGui.QGridLayout()
        buttonBox   = QtGui.QHBoxLayout()

        topGrid.addWidget(labels["Bezeichnung"],        0, 0)
        topGrid.addWidget(self.inputs["Bezeichnung"],   0, 1)
        topGrid.addWidget(labels["Typ"],                1, 0)
        topGrid.addWidget(self.inputs["Typ"],           1, 1)
        topGrid.addWidget(labels["Bauform"],            2, 0)
        topGrid.addWidget(self.inputs["Bauform"],       2, 1)

        bottomGrid.addWidget(labels["Spannung"],          0, 0)
        bottomGrid.addWidget(labels["Stromstärke"],      0, 1)
        bottomGrid.addWidget(self.inputs["Spannung"],     1, 0)
        bottomGrid.addWidget(self.inputs["Stromstärke"], 1, 1)

        buttonBox.addWidget(self.buttonAccept)
        buttonBox.addWidget(self.buttonReject)

        mainVBox.addLayout(topGrid)
        mainVBox.addLayout(bottomGrid)
        mainVBox.addWidget(self.lagerinformationen)
        mainVBox.addLayout(buttonBox)

        self.setLayout(mainVBox)
